package com.yuri.news.entity;

import java.util.ArrayList;
import java.util.List;

/**
 * 权限包装类
 * @author Yuri
 *
 */
public class PrivilegePack {
	private User user; // 用户信息（如果权限是给用户 否则有值否则为空）
	private Role role; // 角色信息（如果权限是给角色 否则有值否则为空）
	private Depa depa; // 部门信息（如果权限是给部门 否则有值否则为空）
	// 权限类型
	private List<Menu> menus = new ArrayList<>(); // 菜单信息（如果权限类型是菜单 否则有值否则为空）
	private List<Button> buttons = new ArrayList<>(); // 按钮信息（如果权限类型是按钮 否则有值否则为空）

	// get和set方法
	public User getUser() {
		return user;
	}

	public void setUser(User user) {
		this.user = user;
	}

	public Role getRole() {
		return role;
	}

	public void setRole(Role role) {
		this.role = role;
	}

	public Depa getDepa() {
		return depa;
	}

	public void setDepa(Depa depa) {
		this.depa = depa;
	}

	public List<Button> getButtons() {
		return buttons;
	}

	public List<Menu> getMenus() {
		return menus;
	}

	// list set
	public void setMenus(Menu menu) {
		this.menus.add(menu);
	}

	public void setButtons(Button button) {
		this.buttons.add(button);
	}

	// list set
	public void setMenus(List<Menu> menu) {
		this.menus.addAll(menu);
	}

	public void setButtons(List<Button> button) {
		this.buttons.addAll(button);
	}

	// get和set方法结束
	@Override
	public String toString() {
		return "PrivilegePack [user=" + user + ", role=" + role + ", depa=" + depa + ", menus=" + menus + ", buttons="
				+ buttons +  "]";
	}

}
